1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing method, an image output apparatus, and an image processing system.
2. Description of the Background Art
An output device such as a printer or display has a color space different from that of an input device such as a digital camera or scanner. Therefore, it is necessary to convert once the color space into a certain color space in order to combine the color spaces to each other. In general, the color space (inputted image) of the input device is once converted into a certain standard color space, and the converted standard color space is re-converted into the color space of the output device. By virtue of this operation, a correct color coordinate conversion can be performed even if an output device and input device, each having a different color space, are optionally combined.
The International Color Consortium (ICC) standardizes a Profile format and the like describing the conversion method or characteristic for each of input and output devices for the aforesaid color coordinate conversion. For example, there is ICC. 1: 2004-10 in the standard. According to this, the standard color space is a connection space of Profile, and is defined as PCS (Profile Connection Space). Further, some types of PCS and conversion techniques are also defined.
A conversion technique easy to be generally understood will be explained. First, an inputted image (for example, RGB values) is γ-converted to calculate the primary-color intensities IR, IG, and IB that are linear values. Then, supposing that the PCS is CIE-XYZ (hereinafter sometimes referred to as X, Y, Z) that is tristimulus value of the visibility, the primary-color intensities IR, IG, and IB are converted into X, Y, and Z by the coordinate conversion. In case where the color space of the output device is represented by CMY values, the values of PCS (X, Y, Z) are coordinate-converted into the CMY space. The coordinate of the CMY space is then subjected to reverse γ-conversion to obtain the control value of the output device.
The above is the basis of a color matching. However, in general devices, the γ-curve or the like has a non-linear characteristic, whereby sufficient characteristic cannot be obtained only by the above-mentioned conversion technique in most cases.
Therefore, it is necessary to employ, for example, a technique in which a γ-value is differed for every RGB or CMY, or a technique of using an LUT (look-up table) in the γ-conversion or reverse γ-conversion. The LUT processing in the γ-conversion or reverse γ-conversion dose not entail so large a problem, but the processing using the LUT for the coordinate conversion of the color space involves many dimensions, thereby entailing a problem of a memory usage. For example, in order to obtain output information of a certain color space of 24-bit color (3 byte) for the PCS of 24-bit color (3 byte), the storage capacity of about 50 Mbytes is required for the LUT. There is a method in which the data in the LUT is thinned out and the portion having no value is calculated by interpolation. However, since there is a trade-off relationship between the conversion precision and magnitude of the capacity, there is a limit to the reduction of storage capacity of the LUT.
On the other hand, when the output device is focused, the processing speed of the coordinate conversion does not matter so much if the output device is a printer. This is because, when the output device is a printer, the coordinate conversion operation can be done by a PC (personal computer), and hence, the above-mentioned full-size LUT can easily be used. However, since the printer itself has a reading device for a non-volatile storage medium, and the operation of the coordinate conversion is required to be executed in the printer in recent years, it is difficult to install the full-size LUT to the printer itself. Therefore, another technique should necessarily be tried.
In case where the output device is a display device (display), a display of a moving image is required. Therefore, real-time processing is needed. Accordingly, the display device needs an algorithm of a color coordinate conversion that can be processed with high speed, and the processing that does not impose load on a system such as PC is desirable. Consequently, in case where the output device is a display device (display), the capacity of the LUT is limited, and a new technique is required. When the display device is an LCD (liquid crystal display device), in particular, the γ-curve is different for every RGB. Therefore, the processing of the LCD such as the color coordinate conversion and the like, is improved by techniques disclosed in Japanese Patent Application Laid-Open Nos. 2001-312254 or 2002-116750.
In case where the output device is a display device, the processing of the color coordinate conversion executed by the display device, high speed and low storage capacity are required. In case where the display device is an LCD whose optical characteristic has distortion, in particular, the techniques disclosed in Japanese Patent Application Laid-Open Nos. 2001-312254 or 2002-116750 executes processing in such a manner that the γ-characteristic differs for every RGB. However, in the techniques disclosed in the above-mentioned applications, the conversion precision is insufficient compared to the case of the processing using full-size LUT. Specifically, since not only Y value of RGB is different, but also X value, Y value and Z value are different from one another in the LCD, nine γ-curves are needed. Further, in a TN (twisted nematic) LCD, each of γ-curves cannot be represented by a simple function such as γ-power, and an inflection point may be existed. Therefore, a simple color coordinate conversion with high precision is not easy even by using the techniques disclosed in the above-mentioned applications.